How to implement a multi-part snake with smooth movement? [closed]
Posted
by
Jamie
on Game Development
See other posts from Game Development
or by Jamie
Published on 2014-05-16T21:46:57Z
Indexed on
2014/06/05
3:41 UTC
Read the original article
Hit count: 207
game-design
|tile
Sorry that i couldnt answer on my previous post but it got closed. I couldnt answer because i had to prepair for my finals.
As there were problems with understanding of what im trying to achieve, im going to describe a little bit more in depth.
Im creating a game in which you steer a snake. I assume everybody knows how that works. But in my case the snake isnt just propagating in an array element by element. Imagine a 2Dgrid on which the snake moves. Its 10x10 tiles. Lets say one tile is 4x4 meters. The snakes head spawns in the middle of the (3,2) tile (beginning with (0,0)), so its position is (4*3+2,4*2+2)(the 2's are so that the snake is in the middle of the 4x4 tile). And heres where the fun begins. when the snake moves, it doesnt jump to next tile. Instead it moves a fraction of the way there. So lets say the snake is heading to tile (4,2). After it moved once, its position is (4*3+2+0.1,4*2+2), where 0.1 is the fraction of the way it moved. This is done to achieve smooth movement.
So now im adding the rest of the body. The rest is supposed to move along the exact same path as the head did. I implemented it so that each part of the body has its own position and direction. Then i apply this algorithm:
1.Move each part in its direction. 2.If a part is in the middle of the tile(which implies all of them are), change each parts direction to the direction of the part proceeding it.
As i said before i could make this work, but i cant stop thinking that im overlooking a much easier and cleaner solution. So this is my question. Is there any easier/better/faster way to do this?
© Game Development or respective owner